home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
027a
/
springb.zip
/
SB.DOC
< prev
next >
Wrap
Text File
|
1991-10-26
|
9KB
|
204 lines
SpringBoard
(c) Copyright 1991 SoundView Data Systems All Rights Reserved.
*----------------------------------
Introduction
SpringBoard is a mini-compiler that generates tiny programs that can be
used to paint a "Loading..." message on the user's screen, while loading
and beginning execution of much larger applications. This helps to solve
the problem of "what to show the user while loading a large application
from a slow hard-disk or floppy".
SpringBoard supports a set of functions designed to permit the display
of attractive text-mode screens. These functions include Clear(),
Fill(), Sprint(), box-drawing and color-setting functions, and a Run()
function that loads and executes the target application. SpringBoard
uses standard DOS text files as source code, and produces .COM type
output files. No external linking step is required.
The SpringBoard Run() function is specially designed to load the
target program to begin at the same memory address that the launcher
originally occupied; thus, the application sees NO LOSS of memory, as
compared with it running manually from the DOS command line. The only
overhead is the loading time for the launcher; these small .com
type programs are typically approximately 5K in size, and load rapidly.
*----------------------------------
Operation
Use of the SpringBoard system is very simple. A source file should be
written using any standard text editor. A sample file (TEST.SRC) is
included to demonstrate the basic techniques used, and the
language syntax is documented below. The SpringBoard compiler is
executed with the command:
SB <source>[extension] <output>[extension]
The source file extension defaults to ".SRC" but any extension may be
specified. The output file, however, will always be a ".COM" file,
regardless of the extension passed.
The output file (the "launcher" file) can be executed with or without
command-line arguments. If any are passed, they will be used rather than
the target filespec and arguments that were originally specified in the
source code.
*----------------------------------
Syntax
SpringBoard supports the following functions (all arguments are
required - none are optional):
CLEAR()
SPRINT( nRow, nCol, cTEXT )
SINGLEBOX( nTopLeftRow, nTopLeftCol, nBottomRightRow, nBottomRightCol )
DOUBLEBOX( nTopLeftRow, nTopLeftCol, nBottomRightRow, nBottomRightCol )
SETCOLOR( cColorString )
SETMONO( cColorString )
FILL( nTopLeftRow, nTopLeftCol, nBottomRightRow, nBottomRightCol, cChar )
RUN( cProgname [args] )
CLEAR()
This function is called with no argument, and will clear the screen,
using the current color scheme, depending upon the video mode detected.
SPRINT( nRow, nCol, cTEXT )
This is the screen print function, and the mainstay of most
applications. All character-type arguments should be passed in single-
or double-quote delimited format. The Row and Column coordinates are
numeric. Line-drawing and other high-ASCII characters can be included in
the character string.
SINGLEBOX( nTopLeftRow, nTopLeftCol, nBottomRightRow, nBottomRightCol )
DOUBLEBOX( nTopLeftRow, nTopLeftCol, nBottomRightRow, nBottomRightCol )
Use these functions to draw single-line or double-line boxes on the
screen, at the passed coordinates. Use a SETCOLOR() or SETMONO() command
prior to calling these functions to produce boxes of attractive and
contrasting color, since the functions themselves do not accept color
arguments.
SETCOLOR( cColorString )
SETMONO( cColorString )
The SpringBoard runtime package will determine whether a COLOR or MONO
video mode is currently in effect, and will use the color attribute set
by one of these functions. ColorString is a character-type argument,
passed in single or double quotes, and accepts standard xBase color
abbreviations. Please note, however, that the ColorString should
evaluate to a single attribute, with the foreground value(s) seperated
from the background by a slash("/") in typical xBase manner.
FILL( nTopLeftRow, nTopLeftCol, nBottomRightRow, nBottomRightCol, cChar )
This function will fill a specified rectangular area of the screen with
the specified character. The color will be the current color, and should
be set with SETCOLOR() and SETMONO() prior to calling FILL(). The fill
character should be delimited with single or double quotes, and can be a
high-ASCII graphic character.
RUN( cProgname [args] )
This is the heart of the SpringBoard system. The launch code will
relocate itself to high-memory, load the target application at its own
prior address, and then execute it. Thus the target application
experiences no loss of RAM despite the size of the launch program. If
the target file specification does not contain any path information, and
a PATH environmental variable exists, the directories listed in that
variable will then be searched for the target file. If no file extension
is passed, ".exe" will be assumed. If the target is successfully
executed, no additional code in the launcher beyond the RUN() function
will be executed. If the RUN() function fails, additional code can be
executed to inform the user of the failure. The SpringBoard launcher
will echo the ErrorLevel returned by the failed DOS attempt to load the
target file.
*----------------------------------
Errors
You will be notified if there are DOS errors associated with
locating and opening the input and output files, as well as if the
filespecs are identical (which is not permitted).
If a syntax error is detected, such as a mis-spelled or unrecognized
function name, the compile is aborted, and the error and line number
are displayed on the STDERR device. However, there is minimal
error-checking for the arguments passed to the functions, so please
check your source carefully to avoid unexpected and potentially
unpleasant results.
*----------------------------------
Legal Stuff...
Copyright Notice and Software License
This document; other accompanying written and disk-based notes and
specifications; and all referenced and related program files,
demonstration code and object modules accompanying this document are
copyrighted by SoundView Data Systems. The copyright owner hereby
licenses you to: use the software; make as many copies of the software
and documentation as you wish; give exact copies of the original to
anyone; and distribute the software and documentation in its unmodified
form via electronic means. There is no charge for any of the above.
You are specifically prohibited from charging or requesting donations for
any such copies, however made. Exceptions may be granted to organizations
which charge a small fee for materials, handling, postage and general
overhead. NO ORGANIZATION IS AUTHORIZED TO CHARGE ANY AMOUNT FOR
DISTRIBUTION OF THE SOFTWARE OR DOCUMENTATION UNDER ANY OTHER
CONDITIONS. Organizations which charge a fee for distribution of any
and all SpringBoard materials, except as noted above or with the
express, written consent of SoundView Data Systems, will be considered
in violation of this copyright and will be prosecuted to the full
extent of the law.
In addition, you are specifically prohibited from making any modifications
to the archive file prior to redistribution. This archive contains the
following files:
SB.DOC This file
SB.EXE The SpringBoard executable
TEST.SRC A sample program
PRODUCT.INF Product information about other utilities from SoundView
Data Systems and Programming Solutions, Inc.
SY.NG Norton Guides Database for SEZ YOU and SEZ YOU Professional
PE.NG Norton Guides Database for PS ERROR
If any of the above files are missing, contact SoundView Data Systems or
Programming Solutions, Inc. immediatly (contact information is below).
No copy of the software may be distributed or given away without this
accompanying documentation; this notice must not be removed.
Warranty
There is no warranty of any kind associated with this software, and the
copyright owner is not liable for damages of any kind. By using this
software, you agree to this. Every effort has been made by SoundView
Data Systems to make this product bug-free. However, the nature of
software development is that it is impossible to guarantee bug-free
software.
If you do encounter a bug, however, please notify SoundView Data Systems
(CompuServe 72356,1063) or Programming Solutions, Inc. (CompuServe 73320,3117
or telephone 801-262-4141) of the problem.
*---end of file